#ifndef LGFILTERITEM_H
#define LGFILTERITEM_H

#include <QWidget>

namespace Ui {
class LGFilterItem;
}

class LGFilterItem : public QWidget
{
    Q_OBJECT

public:
    explicit LGFilterItem(QWidget *parent = nullptr);
    ~LGFilterItem();

    static LGFilterItem* newFilterItem(bool checked, QString text);

    bool isChecked();
    QString text();

    int count() const;
    void setCount(int newCount);
    void increment();

    int index() const;
    void setIndex(int newIndex);

private slots:
    void on_check_stateChanged(int arg1);

    void on_LGFilterItem_customContextMenuRequested(const QPoint &pos);

    void on_action_block_item_triggered();

    void on_action_unblock_item_triggered();

signals:
    void onStateChanged();

private:
    Ui::LGFilterItem *ui;

    int m_count;
    int m_index;


private:
    bool m_blocked;

public:
    bool isBlocked();

};

#endif // LGFILTERITEM_H
